package homework_java.eg;

public class Synchronize_Thread3 { 
     public void m4t1() { 
          synchronized(this) { 
               int i = 5; 
               while( i-- > 0) { 
                    System.out.println(Thread.currentThread().getName() + " : " + i); 
                    try { 
                         Thread.sleep(500); 
                    } catch (InterruptedException ie) { 
                    } 
               } 
          } 
     } 
     public void m4t2() { 
          synchronized(this) { 
               int i = 5; 
               while( i-- > 0) { 
                    System.out.println(Thread.currentThread().getName() + " : " + i); 
                    try { 
                         Thread.sleep(500); 
                    } catch (InterruptedException ie) { 
                    } 
               } 
          }

     }
     public static void main(String[] args) { 
          final Synchronize_Thread3 myt2 = new Synchronize_Thread3(); 
          Thread t1 = new Thread(  new Runnable() {  
			  public void run() {  myt2.m4t1();  }  
			  }, "Thead1"  ); 
          Thread t2 = new Thread(  new Runnable() {  
			  public void run() { myt2.m4t2();   }  
			  }, "Thread2"  ); 
          Thread t3 = new Thread(  new Runnable() {  
			  public void run() { myt2.m4t1();   }  
			  }, "Thread3"  );  //�߳�t1���߳�t3��ͬ����Sychronize_Thread.java
		  t3.start();
          t1.start();
          t2.start();
     }
}